/**************************************************************************
 * @doc CPAC
 * @module CPACOPER.H |  
 * Include file for the CPAC data file and functions.
 *
 * Product         :   SoftPay 2000 (Global Payment Methodology).
 * <nl>Developer   :   Vipin_K1
 * <nl>Notes       :
 *
 * @head3 CPAC Functions |
 * @index | CPAC
 * @end
 *
 * Copyright (c) 1996-2000 by VeriFone Inc. All rights reserved.
 * 
 * No part of this software may be used, stored, compiled, reproduced,
 * modified, transcribed, translated, transmitted, or transferred, in any form 
 * or by any means whether electronic, mechanical, magnetic, optical, 
 * or otherwise, without the express prior written permission of VeriFone, Inc.
 *
 * Revision History
 * ------------------------------------------------------------------------
$Log: /SoftPay/SPK2SIM/Source/CPACSrc/CPACOPER.h $
 * 
 * 1. Vipin_k1 12/10/2000 SYD office, added the Amex fn. prototypes.
 * ------------------------------------------------------------------------
 ********************************************************************************/
#ifndef CPACOPER_H
#define CPACOPER_H

extern int inInitVeriPrint(TRANSACTION_OBJECT* pobTran);
extern int inOpenVeriPrint(void);
extern int inInitVPHandle(void);
extern int inCustDisplaySwipeCardInfo(TRANSACTION_OBJECT* pobTran);
extern int inSetCPACStatusLine(void);
extern int inCPACDisplayCardTitle(TRANSACTION_OBJECT* pobTran);
extern int inCPACStartCardTxn(TRANSACTION_OBJECT* pobTran);
extern int inCPACAdjust(TRANSACTION_OBJECT* pobTran);
extern int inCPACAboutFileProcessing(TRANSACTION_OBJECT* pobTran);
extern int inCPACManualEntryProcess(TRANSACTION_OBJECT* pobTran,PFI pinValManual,int* pinResult);
extern int inCPACEnterWithMessage(long lnMessageNumber,VS_BOOL fScrollDisplay,int inPromptRow,int inEntryRow,char* szResponseString,int inDataType,int inMaxChars,int  (*inValidator) (char* szResponseString));
extern int inCPACEnterWithStrDefault(long lnMsgId,char* szPromptString,VS_BOOL fScrollDisplay,int inPromptRow,int inEntryRow,char* szResponseString,int inDataType,int inMaxChars,int (*inValidator) (char* szResponseString));
extern int inCPACCardReadOperation(TRANSACTION_OBJECT* pobTran,PFI pinValSwiped,int* pinResult);
extern int inGetCPACAdjustAmount(TRANSACTION_OBJECT* pobTran);
extern int inCPACTipAdjust(TRANSACTION_OBJECT* pobTran);
extern int inCPACBatchTotalsOperation(TRANSACTION_OBJECT* pobTran);
extern int inCPACVoidYesNo(TRANSACTION_OBJECT* pobTran);
extern int inCPACGetInvNum(TRANSACTION_OBJECT* pobTran);
extern int inCPACGetInvoiceNumber(TRANSACTION_OBJECT* pobTran);
extern int inGetCPACCloseTabAmount(TRANSACTION_OBJECT* pobTran);
extern int inCPACDefaultDisplayReviewRec(TRANSACTION_OBJECT* pobTran);
extern int inCPACGetAuthCode(TRANSACTION_OBJECT* pobTran);
extern int inCPACConfirmInvAmt(TRANSACTION_OBJECT* pobTran);
extern int inCPACUserChoice(TRANSACTION_OBJECT* pobTran);
extern int inCPACTotTransAmtUpdate(TRANSACTION_OBJECT* pobTran);
extern int inCPACTotTransAmtAlwd(TRANSACTION_OBJECT* pobTran);
extern int inEditCPACTableOperation(TRANSACTION_OBJECT* pobTran);
extern int inCPACGetUserInvNum(TRANSACTION_OBJECT* pobTran);
extern int inCPACMaxAmountOperation(TRANSACTION_OBJECT* pobTran);
extern int inCPACDemoTrainOperation(TRANSACTION_OBJECT* pobTran);
extern int inCPACChkBatchEmpty(TRANSACTION_OBJECT* pobTran);
//extern int inCPACRange(char* pchValue);
extern int inCPACBatchClearOperation(TRANSACTION_OBJECT* pobTran);
extern int inCPACDeleteAllBatches(TRANSACTION_OBJECT* pobTran);
extern int inCPACIncBatchNum(void);
extern int inCPACCheckLongAmtOverflow(TRANSACTION_OBJECT* pobTran);
extern int inCPACValidateSwipedCard(TRANSACTION_OBJECT* pobTran);
extern int inCPACValidateManualExpDate(char* pchExpDate);
extern int inCPACValidateExpDate(char* szDateEntered);
extern int inCITICheckBatchTotals(TRANSACTION_OBJECT* pobTran);
extern int inCITIValidateString(char* szString);
extern int inCITIGetBatchNumAndCheck(TRANSACTION_OBJECT* pobTran);
extern int inSingleBatchClearOperation(TRANSACTION_OBJECT* pobTran);
extern int inManualEntryProcess(TRANSACTION_OBJECT* pobTran,PFI_TO_PSZ pinValManual,int* pinResult);
extern int inCPACShowMemoryLeftOperation(TRANSACTION_OBJECT* pobTran); //1.4

extern VS_BOOL fChkHostBatches(TRANSACTION_OBJECT* pobTran,int inCount); // saritha
extern VS_BOOL fchkrevfile(TRANSACTION_OBJECT* pobTran);

//Kelvin_F2 --- start: Tip Adjust Input By Total 
#ifdef HKGM
extern int inHKGMTipAdjust(TRANSACTION_OBJECT* pobTran);
extern int inHKGMBatchReviewTipAdjust(TRANSACTION_OBJECT* pobTran);
#endif /* HKGM */
//Kelvin_F2 --- end: Tip Adjust Input By Total 

extern int inCITIDisplayAppLabel(TRANSACTION_OBJECT *pobTran);

#endif /* CPACOPER_H */


